New Maps fail to publish with Error Message: Object reference not set to an instance of an object

Symptom

Mew map added to the directory were not being published and the following error was logged in the publication logs.

19/08/2009 15:38:32
Failure exporting \\xxx\apps\triaster\3 Master\Purchasing\Supplier Approval Updated.vdx to html.

=== Begin For Triaster Support ===
The following content may be useful to the Triaster support team. Please copy and paste it into an e-mail to support@triaster.co.uk and attach any referenced files if you would like help understanding how to avoid this issue reoccurring.

Object reference not set to an instance of an object.
Failure exporting
\\xxx\apps\triaster\3 Master\Purchasing\Supplier Approval Updated.vdx to html.
System.NullReferenceException: Object reference not set to an instance of an object.
at Triaster.ProcessNavigator.Common.ProcessObjects.DocumentBase.get_EngineVersion()

at Triaster.ProcessNavigator.Common.ProcessObjects.Map.ExportToHTML(String strTargetRoot, Boolean blnAddHeaderAndFooter, String strHeaderFileName, String strFooterFileName, enumHTMLMetaTagOptions lngMetaTagOptions, Boolean blnUseVisio2002MouseOver, Boolean blnUseDescriptionMouseOver, Boolean blnConvertHyperlinkCircleLinks)

at Triaster.ProcessNavigator.AnalystEdition.clsExportToHTML.PerformExport(String strTargetRoot, Boolean blnIncludeHeaderAndFooter, String strHeaderFileName, String strFooterFileName, Boolean blnAddMetadata, Boolean blnIncludeProperties, Boolean blnUseVisio2002MouseOver, Boolean blnUseDescriptionMouseOver, Boolean blnConvertHyperlinkCircleLinks, Boolean blnExportModifiedFilesOnly)
=== Finish For Triaster Support ===

Cause

This error is caused by Visio being un-installed from the publication server.

Solution

Re-install Visio, then re-install Process Navigator on the publication server.